1. Field of the Invention
The present invention is directed generally towards an improved data processing system, and in particular, to methods for representing relationships between actions a computer takes during start-up or shut-down. Still more particularly, the present invention is directed towards a method for representing a correct order of start-up and shut-down actions to implement a clean start-up or shut-down.
2. Description of the Related Art
When starting up or powering down a computer, particularly with respect to complex computers such as mainframes, the order in which address spaces in the computer are processed is important. If address spaces are not processed in a proper or expected order, a computer can exhibit emergent behavior that causes undesired consequences such as, but not limited to, system crash, loss of data, or other problems.
The order in which address spaces are to be processed is often predetermined by a user. The user programs the order in which address spaces should be processed. In order to define this order, the user must know the relationships between the various address spaces.
Known systems for representing these relationships define the order of start-up and shut-down actions using a graph which maps the order of start-up and shut-down actions associated with each individual node. The graph can be represented by a series of nodes that have multiple relationships.
These graphs can be very difficult for a human user to understand, particularly when they become large. For some existing systems, over three hundred graph nodes are present, with multiple interdependencies among multiple different nodes. Complicating this analysis, humans can generally hold only up to about seven items in their immediate short term memory for processing. This limited item queue presents a problem when a human user attempts to determine the results of an interaction using such a graph. Especially for large graphs, a human user cannot compute a resulting action, or investigate a hypothetical change in the graph, without the assistance of either a computer or at least a picture of the relationship graph. To make matters more confusing for the human user, requests for start-up and shut-down injected into the graph causes a ripple votes being passed from node to node via the defined relationships. The vote might not cause a given node to take the desired action if another vote of higher preference is already present at the node.
The result of these interactions on the graph is confusion for the user. Worse, a user may unintentionally create undesirable actions that should not be taken during a start-up or shut-down procedure, thereby possibly causing the precise undesired consequences that the human user sought to avoid.